/**
 * 商品相关API接口
 */
import request from '@/utils/request';

/**
 * 获取商品列表
 * @param {Object} params - 查询参数
 * @param {number} [params.page=1] - 页码
 * @param {number} [params.pageSize=10] - 每页数量
 * @param {number} [params.categoryId] - 分类ID
 * @param {string} [params.keyword] - 搜索关键词
 * @param {string} [params.sort] - 排序方式
 * @returns {Promise} 请求结果Promise
 */
export function getProducts(params = {}) {
  return request({
    url: '/api/miniapp/products',
    method: 'get',
    data: params
  });
}

/**
 * 获取商品详情
 * @param {number} id - 商品ID
 * @returns {Promise} 请求结果Promise
 */
export function getProductDetail(id) {
  return request({
    url: `/api/miniapp/products/${id}`,
    method: 'get'
  });
}

/**
 * 获取推荐商品
 * @param {Object} params - 查询参数
 * @param {number} [params.limit=6] - 获取数量
 * @returns {Promise} 请求结果Promise
 */
export function getRecommendProducts(params = {}) {
  return request({
    url: '/api/miniapp/products/recommend',
    method: 'get',
    data: params
  });
}

/**
 * 获取热销商品
 * @param {Object} params - 查询参数
 * @param {number} [params.limit=6] - 获取数量
 * @returns {Promise} 请求结果Promise
 */
export function getHotProducts(params = {}) {
  return request({
    url: '/api/miniapp/products/hot',
    method: 'get',
    data: params
  });
}

/**
 * 获取新品上市
 * @param {Object} params - 查询参数
 * @param {number} [params.limit=6] - 获取数量
 * @returns {Promise} 请求结果Promise
 */
export function getNewProducts(params = {}) {
  return request({
    url: '/api/miniapp/products/new',
    method: 'get',
    data: params
  });
}

export default {
  getProducts,
  getProductDetail,
  getRecommendProducts,
  getHotProducts,
  getNewProducts
}; 